home *** CD-ROM | disk | FTP | other *** search
- #ifndef __FUTURES__
- #define __FUTURES__
-
- #include <AppleEvents.h>
-
- /*
- // Think C does not handle Pascal procedures very well.
- // The CallPascal() function must be used.
- */
- #ifdef THINK_C
- typedef OSErr (*FuturesProc)(AppleEvent* message);
- #else
- typedef pascal OSErr (*FuturesProc)(AppleEvent* message);
- #endif
-
-
- struct FuturesProcTbl
- {
- FuturesProc fThreadBlock;
- FuturesProc fThreadUnblock;
- };
-
- typedef struct FuturesProcTbl FuturesProcTbl;
-
- /*
- // Futures prototypes:
- */
- pascal OSErr ThreadBlock(AppleEvent* message);
- pascal OSErr ThreadUnblock(AppleEvent* message);
- pascal OSErr InitFutures();
- pascal OSErr BlockUntilReal(AppleEvent* message);
- pascal Boolean IsFuture(AppleEvent* message);
- pascal OSErr Ask(AppleEvent* question, AppleEvent* answer);
- pascal OSErr AskQuestion(AppleEvent* question, AppleEvent* answer);
- pascal OSErr DisposeFuture(AppleEvent* future);
-
- #endif
-